<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    // 第一组方法：
    // const arr = [11, 22, 33]

    // 添加
    // const len = arr.push(44)
    // const len = arr.unshift(44)
    // console.log(arr, len)

    // 删除
    // const last = arr.pop()
    // console.log(arr, last)

    // const first = arr.shift()
    // console.log(arr, first)

    // 任意位置删除或添加
    // const temp = arr.splice(1, 1)
    // console.log(arr, temp)

    // arr.splice(2, 0, 44)
    // console.log(arr)

    // 包含
    // console.log(arr.includes(33))// true
    // console.log(arr.includes(55))// false


    // --------------------------------------------------------------

    // const arr = [11, 22, 33, 44]

    // 遍历

    // for循环遍历数组
    // for (let i = 0; i < arr.length; i++) {
    //   console.log(arr[i])
    // }

    // const result = arr.forEach((item, index, array) => {
    //   // item: 每次遍历的元素
    //   // index: 当前元素在数组中的下标
    //   // array：遍历的数组本身
    //   console.log(item, index, array)
    // })
    // console.log(result)


    // --------------------------------------------------------------
    // const arr = [11, 22, 33, 44]

    // 过滤
    // arr.filter((item, index, array) => {
    //   console.log(item, index, array)
    // })

    // 需求：留下 arr 中所有的偶数
    // const evenArr = arr.filter((item) => {
    //   if (item % 2 === 0) {
    //     return true
    //   } else {
    //     return false
    //   }
    // })

    // const evenArr = arr.filter((item) => item % 2 === 0)
    // console.log(evenArr)

    // 需求：把 arr 中大于30的数留下
    // const filteredArr = arr.filter((item) => item > 30)
    // console.log(filteredArr)



    // ---------------------------------------------------------

    // const arr = [11, 22, 33, 44]

    // 语法
    // arr.map((item, index, array) => {
    //   console.log(item, index, array)
    // })

    // 需求：每个元素翻倍
    // const doubleArr = arr.map((item) => item * 2)

    // console.log(doubleArr)


    // 需求: 得到一个对象数组
    // const newArr = arr.map((value, index) => ({ index, value }))
    // console.log(newArr)



    // ------------------------------------------------------------

    // const arr = [11, 22, 33, 44]

    // 检测每一个

    // arr.every((item, index, array) => {
    //   console.log(item, index, array)
    // })


    // 需求：检测 arr 中所有的元素是否都是奇数
    // const flag = arr.every((item) => {
    //   if (item % 2 === 1) {
    //     return true
    //   } else {
    //     return false
    //   }
    // })

    // 简写
    // const flag = arr.every((item) => item % 2 === 1)
    // console.log(flag)

    // 需求：检测 arr 中的所有元素是否都大于10
    // const bool = arr.every((item) => item > 10)
    // console.log(bool)


    // ----------------------------------------------------

    const arr = [11, 22, 33, 44]

    // 需求：遍历求和
    // let sum = 0
    // arr.forEach(item => {
    //   sum += item
    // })
    // console.log(sum)

    // const sum = arr.reduce((prev, item) => prev + item, 0)
    // console.log(sum)


    const goodsList = [
      { id: 1, name: '篮球', num: 1 },
      { id: 2, name: '玩具', num: 3 },
      { id: 3, name: '书籍', num: 2 }
    ]


    const totalNum = goodsList.reduce((prev, item) => prev + item.num, 0)

    console.log(totalNum)

    for (let i = 0; i < filterRoutes.length; i++) {
      router.addRoute(filterRoutes[i])
    }

  </script>
</body>

</html>